package cloud.maque.auth.service;


import cloud.maque.auth.entity.AuthUser;

import java.util.List;


public interface UserService {

    AuthUser getUserByUserName(String userName);

    AuthUser getUserByUserId(String userId);

    AuthUser getUserByUserPhone(String userPhone);

    /**
     * 根据邮箱查询用户
     *
     * @param userEmail
     * @return
     */
    AuthUser getUserByUserEmail(String userEmail);

    /**
     * 根据邮箱查询用户
     */
    List<AuthUser> getUserByUserEmails(String userEmail);

    AuthUser CreateUser(AuthUser user);

    AuthUser GetUserByOpenId(String openId);

    void UpdateOpenId(String userId, String openId);

    String getUserTotpSecret(String userId);

    Boolean updateUserTotpSecret(String userId ,String totpSecret);

}
